<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
<html><head><meta name="qrichtext" content="1" /><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><style type="text/css">
p, li { white-space: pre-wrap; }
</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:9pt; font-weight:400; font-style:normal;">
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Как заменить/удалить/найти звездочку? </p>
<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8.25pt;">Наверное кто-то уже сталкивался с подобной ситуацией - на листе в ячейках записаны слова/предложения, в которых имеется знак - * - звездочка. Иногда его нужно либо найти, либо заменить на другой символ, либо просто удалить. Например, строку вида &quot;</span><span style=" font-size:8.25pt; font-weight:600;">496*120*45</span><span style=" font-size:8.25pt;">&quot; надо преобразовать в такой: &quot;</span><span style=" font-size:8.25pt; font-weight:600;">496x120x45</span><span style=" font-size:8.25pt;">&quot;. И вот тут как раз возникает проблема: символ звездочки</span><span style=" font-size:8.25pt; font-style:italic;">(как и знак вопроса)</span><span style=" font-size:8.25pt;"> является служебным символом - он заменяет собой группу любых символов</span><span style=" font-size:8.25pt; font-style:italic;">(а знак вопроса - один любой символ)</span><span style=" font-size:8.25pt;">. И при попытке заменить только звездочку Excel заменят ВСЕ данные в ячейке. Сейчас пока разговор про стандартную замену - </span><span style=" font-size:8.25pt; font-style:italic;">(</span><span style=" font-size:8.25pt; font-weight:600; font-style:italic; color:#336600;">Excel 2003</span><span style=" font-size:8.25pt; font-style:italic;">: </span><span style=" font-size:8.25pt; font-weight:600; font-style:italic;">Правка</span><span style=" font-size:8.25pt; font-style:italic;"> -</span><span style=" font-size:8.25pt; font-weight:600; font-style:italic;">Заменить</span><span style=" font-size:8.25pt; font-style:italic;">; </span><span style=" font-size:8.25pt; font-weight:600; font-style:italic; color:#336600;">Excel 2007-2010</span><span style=" font-size:8.25pt; font-style:italic;">: вкладка </span><span style=" font-size:8.25pt; font-weight:600; font-style:italic;">Главная</span><span style=" font-size:8.25pt; font-style:italic;"> -</span><span style=" font-size:8.25pt; font-weight:600; font-style:italic;">Найти и выделить</span><span style=" font-size:8.25pt; font-style:italic;"> -</span><span style=" font-size:8.25pt; font-weight:600; font-style:italic;">Заменить</span><span style=" font-size:8.25pt; font-style:italic;">)</span><span style=" font-size:8.25pt;"> - </span><span style=" font-size:8.25pt; font-weight:600;">Ctrl</span><span style=" font-size:8.25pt;">+</span><span style=" font-size:8.25pt; font-weight:600;">H</span><span style=" font-size:8.25pt;">. Неужели ничего нельзя сделать? Можно. Разработчики предусмотрели такой вариант. Просто перед служебным символом необходимо поставить другой служебный знак, который сообщает Excel, что следующий за ним символ не выполняет свои служебные функции, а выступает в роли обычного символа. Знак этот называется </span><span style=" font-size:8.25pt; font-weight:600;">Тильда</span><span style=" font-size:8.25pt;">. Вот такой - </span><span style=" font-size:8.25pt; font-weight:600;">~</span><span style=" font-size:8.25pt;">. На обычной клавиатуре этот знак обычно расположен на кнопке вместе с буквой Ё.</span></p>
<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8.25pt;">Таким образом в поле </span><span style=" font-size:8.25pt; font-weight:600;">Найти</span><span style=" font-size:8.25pt;"> поискового окошка должен получиться такой текст - &quot;</span><span style=" font-size:8.25pt; font-weight:600;">~*</span><span style=" font-size:8.25pt;">&quot;(в поле </span><span style=" font-size:8.25pt; font-weight:600;">Заменить на</span><span style=" font-size:8.25pt;"> указывается символ/ы, которым требуется заменить звездочку. Если звездочку надо удалить - поле оставляем пустым). И не стоит забывать про дополнительные параметры замены</span><span style=" font-size:8.25pt; font-style:italic;">(они раскрываются при нажатии кнопки &quot;</span><span style=" font-size:8.25pt; font-weight:600; font-style:italic;">Параметры</span><span style=" font-size:8.25pt; font-style:italic;">&quot; поискового окна)</span><span style=" font-size:8.25pt;">. А именно - необходимо поставить/снять галочку у параметра </span><span style=" font-size:8.25pt; font-weight:600;">Ячейка целиком</span><span style=" font-size:8.25pt;">. В рассматриваемом случае эту галочку необходимо снять.<br /></span><img src="image28874.png" /></p>
<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8.25pt;">Если же надо найти саму Тильду, то тут все также - просто указываете две тильды: </span><span style=" font-size:8.25pt; font-weight:600;">~~</span></p>
<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8.25pt;">По тому же принципу этот символ используется и в формулах, которые работают с служебными символами </span><span style=" font-size:8.25pt; font-style:italic;">(</span><span style=" font-size:8.25pt; font-weight:600; font-style:italic;">ВПР</span><span style=" font-size:8.25pt; font-style:italic;">, </span><span style=" font-size:8.25pt; font-weight:600; font-style:italic;">СЧЁТЕСЛИ</span><span style=" font-size:8.25pt; font-style:italic;">, </span><span style=" font-size:8.25pt; font-weight:600; font-style:italic;">СУММЕЛИ</span><span style=" font-size:8.25pt; font-style:italic;"> и т.п.)</span></p>
<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8.25pt;">Но. Всегда есть но. Некоторые формулы любые символы воспринимают как текст сразу и для них нет такого понятия, как служебный символ. К ним относится функция </span><span style=" font-size:8.25pt; font-weight:600;">НАЙТИ</span><span style=" font-size:8.25pt;">. В данной функции для поиска данного символа не надо ставить перед ним еще один, потому как она не воспринимает символы подстановки как таковые. Она абсолютно любой символ принимает как текст и ищет строго то, что указано:<br />=НАЙТИ(&quot;~&quot;; A1)<br />=НАЙТИ(&quot;*&quot;; A1)<br />=НАЙТИ(&quot;?&quot;; A1)<br />=FIND(&quot;~&quot;, A1)<br />=FIND(&quot;*&quot;, A1)<br />=FIND(&quot;?&quot;, A1)</span></p>
<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8.25pt;">Есть аналогичная ей функция - </span><span style=" font-size:8.25pt; font-weight:600;">ПОИСК</span><span style=" font-size:8.25pt;">. В этой функции обязательно применять тот же принцип, что и во всех вышеперечисленных - т.е. явно указывать Excel, что мы ищем спец.символ:<br />=ПОИСК(&quot;~~&quot;; A1)<br />=ПОИСК(&quot;~*&quot;; A1)<br />=ПОИСК(&quot;~?&quot;; A1)<br />=SEARCH(&quot;~~&quot;, A1)<br />=SEARCH(&quot;~*&quot;, A1)<br />=SEARCH(&quot;~?&quot;, A1)</span></p>
<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8.25pt;">И к слову сказать, символы звездочки и вопр.знака так же используются формулами </span><span style=" font-size:8.25pt; font-weight:600;">ВПР(VLOOKUP)</span><span style=" font-size:8.25pt;">, </span><span style=" font-size:8.25pt; font-weight:600;">ГПР(HLOOKUP)</span><span style=" font-size:8.25pt;"> и </span><span style=" font-size:8.25pt; font-weight:600;">ПОИСКПОЗ(MATCH)</span><span style=" font-size:8.25pt;">. При этом самый неприятный момент здесь заключается в том, что звездочка, вопросительный знак или сама тильда могут быть внутри текста в искомом массиве данных:<br /></span><img src="image27032.png" /><span style=" font-size:8.25pt;"><br />и как видно в этом случае данные с тильдой не могут быть найдены. Чтобы найти их через ВПР(и прочие схожие функции) необходимо заменить тильду на две. Я бы советовал делать это так(на примере формул из таблицы выше):<br />=ВПР(ПОДСТАВИТЬ(F2;&quot;~&quot;;&quot;~~&quot;);$A$2:$C$7;3;0)<br />=VLOOKUP(SUBSTITUTE(F2,&quot;~&quot;,&quot;~~&quot;),$A$2:$C$7,3,0)</span></p>
<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:8.25pt;">И хоть данные со звездочкой и вопр.знаком в большинстве случаев мешать не будут, можно попасть на ситуацию, когда тексту со звездочкой будет сопоставлен неверный результат:<br /></span><img src="image28969.png" /><span style=" font-size:8.25pt;"><br />почему ВПР так поступает лучше прочитать здесь: </span><a href="http://www.excel-vba.ru/chto-umeet-excel/kak-najti-znachenie-v-drugoj-tablice-ili-sila-vpr/"><span style=" font-size:8.25pt; text-decoration: underline; color:#0000ff;">Как найти значение в другой таблице или сила ВПР</span></a><span style=" font-size:8.25pt;">. А в этой статье я лишь приведу формулу, как избежать таких проблем. Так же как и с тильдой используем функцию </span><span style=" font-size:8.25pt; font-weight:600;">ПОДСТАВИТЬ(SUBSTITUTE)</span><span style=" font-size:8.25pt;">, но теперь подставляем тильду к звездочке:<br />=ВПР(ПОДСТАВИТЬ(D2;&quot;*&quot;;&quot;~*&quot;);$A$2:$A$4;1;0)<br />=VLOOKUP(SUBSTITUTE(D2,&quot;*&quot;,&quot;~*&quot;),$A$2:$A$4,1,0)</span></p></body></html>